home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Demos / OOFILE / Buildable, limited OOFILE / c-tree headers / ctssql.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-11-14  |  13.8 KB  |  659 lines  |  [TEXT/CWIE]

  1. /*
  2.  *    This program is the CONFIDENTIAL and PROPRIETARY property 
  3.  *    of FairCom(R) Corporation. Any unauthorized use, reproduction or
  4.  *    transfer of this computer program is strictly prohibited.
  5.  *
  6.  *      Copyright (c) 1984 - 1994 FairCom Corporation.
  7.  *    This is an unpublished work, and is subject to limited distribution and
  8.  *    restricted disclosure only. ALL RIGHTS RESERVED.
  9.  *
  10.  *            RESTRICTED RIGHTS LEGEND
  11.  *    Use, duplication, or disclosure by the Government is subject to
  12.  *    restrictions set forth in subparagraph (c)(1)(ii) of the Rights in
  13.  *     Technical Data and Computer Software clause at DFARS 252.227-7013.
  14.  *    FairCom Corporation, 4006 West Broadway, Columbia, MO 65203.
  15.  *
  16.  *    c-tree PLUS(tm)    Version 6.4
  17.  *            Release B
  18.  *            October 19, 1994
  19.  */
  20.  
  21. #ifndef __CTSSQL_H__
  22. #define __CTSSQL_H__
  23.  
  24. /*************************************************************************
  25.  *  this section includes some header files for some common compilers.   *
  26.  *  If your compiler is not here, add the required declarations and      *
  27.  *  includes to the final #else section.  If your system uses the old    *
  28.  *  UNIX style variable argument list instead of the ANSI variety, you   *
  29.  *  should #define SYSTEM_V_VARARGS.  Some compilers, especially in the  *
  30.  *  16 bit DOS environment, work more efficiently when you #define       *
  31.  *  STACK_VARARGS.  However, it is your responsibility to determine      *
  32.  *  whether this works for your environment, and be aware that the       *
  33.  *  method may stop working with a new version of the compiler or some   *
  34.  *  other change to your environment.                                    *
  35.  *************************************************************************/
  36.  
  37. #ifdef ctNONSQL
  38. #define NOEXITREPLACEMENT
  39. #endif
  40.  
  41. #ifndef ctNONSQL
  42.  
  43. #ifdef _MSC_VER
  44.  
  45. #include <malloc.h>
  46. #include <float.h>
  47. #define ANSI_VARARGS
  48. #define ANSIFUNCS
  49.  
  50. #endif
  51.  
  52. #ifdef __IBMC__
  53.  
  54. #include <malloc.h>
  55. #define ANSI_VARARGS
  56. #define ANSIFUNCS
  57.  
  58. #endif
  59.  
  60. #ifdef __ZTC__
  61.  
  62. #include <stdlib.h>
  63. #define ANSI_VARARGS
  64. #define ANSIFUNCS
  65.  
  66. #endif
  67.  
  68. #ifdef __BORLANDC__
  69.  
  70. #include <malloc.h>
  71. #define ANSI_VARARGS
  72. #define ANSIFUNCS
  73.  
  74. #endif
  75.  
  76. #ifdef __WATCOMC__
  77.  
  78. #include <malloc.h>
  79. #define ANSI_VARARGS
  80. #define ANSIFUNCS
  81.  
  82. #endif
  83.  
  84. #ifdef __GNUC__
  85.  
  86. #include <stdlib.h>
  87. #include <float.h>
  88. #include <limits.h>
  89.  
  90. #ifndef FLT_MIN
  91. #define FLT_MIN MINFLOAT
  92. #endif
  93.  
  94. #ifndef DBL_MIN
  95. #define DBL_MIN MINDOUBLE
  96. #endif
  97.  
  98. #define ANSI_VARARGS
  99. #define ANSIFUNCS
  100.  
  101. #endif
  102.  
  103. #ifdef __BSD__
  104.  
  105. /*  define using -D__BSD__ on command line  */
  106. #define SYSTEM_V_VARARGS
  107. #define FLT_MIN MINFLOAT
  108. #define DBL_MIN MINDOUBLE
  109.  
  110. #endif
  111.  
  112. /*  you'll have to define this with a -D on the command line  */
  113. #ifdef __UNIX__
  114.  
  115. #define SYSTEM_V_VARARGS
  116.  
  117. #endif
  118.  
  119. #ifndef ANSI_VARARGS
  120. #ifndef SYSTEM_V_VARARGS
  121.  
  122. /*  you need to add a #define for your compiler or place a -D on the  */
  123. /*  compile line!                                                     */
  124. deliberate error.  You need to either add a ifdef/endif for your compiler,
  125. or use a -D on the command line to select one of the defined environments.
  126.  
  127. Note that for UNIX, you should use either -D__BSD__ or -D__UNIX__ for BSD
  128. or System V UNIX, respectively.
  129.  
  130. #endif  /*  SYSTEM_V_VARARGS  */
  131. #endif  /*  ANSI_VARARGS      */
  132.  
  133.  
  134. #ifdef ANSI_VARARGS
  135. #include <stdarg.h>
  136. #endif
  137.  
  138. #ifdef SYSTEM_V_VARARGS
  139. #include <varargs.h>
  140. #endif
  141.  
  142. #ifndef EOF
  143. #define EOF -1
  144. #endif
  145.  
  146. #endif /* ~ctNONSQL */
  147.  
  148. #define SQL_MAX_NAME_LENGTH 20
  149. #define SQL_MAX_CURSORS 50
  150. #define SQL_NULLDISPLAY ((pSQL_C)"?")
  151.  
  152. #define SQL_EXTERN extern
  153. #define SQL_GLOBAL /**/
  154. #define SQL_LOCAL static
  155. #define SQL_VOID void
  156.  
  157. typedef void *pSQL_VOID;
  158. typedef unsigned char SQL_C;
  159. typedef SQL_C *pSQL_C;
  160. typedef char SQL_SC;
  161. typedef SQL_SC *pSQL_SC;
  162. typedef char SQL_NC;
  163. typedef SQL_NC *pSQL_NC;
  164. typedef int SQL_NI;
  165. typedef SQL_NI *pSQL_NI;
  166. typedef unsigned int SQL_UNI;
  167. typedef SQL_UNI *pSQL_UNI;
  168. typedef short SQL_I;
  169. typedef SQL_I *pSQL_I;
  170. typedef unsigned short SQL_UI;
  171. typedef SQL_UI *pSQL_UI;
  172. typedef long SQL_L;
  173. typedef SQL_L *pSQL_L;
  174. typedef unsigned long SQL_UL;
  175. typedef SQL_UL *pSQL_UL;
  176. typedef float SQL_F;
  177. typedef SQL_F *pSQL_F;
  178. typedef double SQL_D;
  179. typedef SQL_D *pSQL_D;
  180. typedef void *SQL_ANYPTR;
  181. typedef SQL_ANYPTR *SQL_POINTER_ARRAY;
  182. typedef long SQL_RECID;
  183. typedef SQL_RECID *pSQL_RECID;
  184. typedef unsigned int SQL_BFT;
  185.  
  186. #ifndef ctNONSQL
  187.  
  188. #ifndef SKIP_SQLDA
  189.  
  190. enum SQL_COLUMN_TYPES
  191. {
  192.     SQL_CHAR,
  193.     SQL_SMALLINT,
  194.     SQL_INTEGER,
  195.     SQL_FLOAT,
  196.     SQL_DOUBLE,
  197.     SQL_VCHAR,
  198.     SQL_DATE,
  199.     SQL_DECIMAL,
  200.     SQL_BOOLEAN
  201. };
  202.  
  203. #endif  /*  SKIP_SQLDA  */
  204.  
  205. /*  host variable types  */
  206. enum HOST_TYPE
  207. {
  208.     HOST_SHORT_INTEGER,
  209.     HOST_LONG_INTEGER,
  210.     HOST_FLOAT,
  211.     HOST_DOUBLE,
  212.     HOST_CHAR_ARRAY,
  213.     HOST_CHAR_1,
  214.     HOST_DATE_TIME,
  215.     HOST_DECIMAL
  216. };
  217.  
  218. #define SQL_DTPAT ((pSQL_C)"MM-DD-YYYY")
  219. #define SQL_DECPAT ((pSQL_C)"FFFFFFFFFFFFFFFF`FFFFFFFFFFFFFFF")
  220.  
  221. typedef struct _varspec
  222. {
  223.     enum HOST_TYPE type;
  224.     SQL_UNI len;
  225.     SQL_ANYPTR ptr;
  226.     pSQL_C pat;
  227.     SQL_NI isindic;
  228. } VARSPEC, *pVARSPEC;
  229.  
  230. #endif /* ~ctNONSQL */
  231.  
  232. #ifdef __CQL_H__
  233.  
  234. #define SQL_DEC NEWDEC
  235. #define pSQL_DEC pNEWDEC
  236.  
  237. #else
  238.  
  239. typedef struct _sql_dec
  240. {
  241.     SQL_SC sign;
  242.     SQL_SC scale;
  243.     SQL_UNI dig0 : 4;
  244.     SQL_UNI dig1 : 4;
  245.     SQL_UNI dig2 : 4;
  246.     SQL_UNI dig3 : 4;
  247.     SQL_UNI dig4 : 4;
  248.     SQL_UNI dig5 : 4;
  249.     SQL_UNI dig6 : 4;
  250.     SQL_UNI dig7 : 4;
  251.     SQL_UNI dig8 : 4;
  252.     SQL_UNI dig9 : 4;
  253.     SQL_UNI dig10 : 4;
  254.     SQL_UNI dig11 : 4;
  255.     SQL_UNI dig12 : 4;
  256.     SQL_UNI dig13 : 4;
  257.     SQL_UNI dig14 : 4;
  258.     SQL_UNI dig15 : 4;
  259. } SQL_DEC, *pSQL_DEC;
  260.  
  261. #endif
  262.  
  263. #ifdef __CQL_H__
  264.  
  265. #define SQL_D_TIME D_TIME
  266. #define pSQL_D_TIME pD_TIME
  267.  
  268. #else
  269.  
  270. typedef struct _sql_d_time
  271. {
  272.     SQL_UNI second : 6;
  273.     SQL_UNI minute : 6;
  274.     SQL_UNI hour : 5;
  275.     SQL_UNI day : 5;
  276.     SQL_UNI month : 4;
  277.     SQL_UNI year : 14 ;
  278. } SQL_D_TIME, *pSQL_D_TIME;
  279.  
  280. #endif
  281.  
  282. #ifndef ctNONSQL
  283.  
  284. struct _sqlda;
  285.  
  286. #ifndef SKIP_SQLDA
  287.  
  288. typedef struct _sqlda_col
  289. {
  290.     pSQL_C name;
  291.     enum SQL_COLUMN_TYPES type;
  292.     SQL_UNI len;
  293.     SQL_UNI scale;
  294.     SQL_UNI precision;
  295.     SQL_NI not_null;
  296.     SQL_NI unique;
  297.     SQL_NI nullval;
  298.     union
  299.     {
  300.         pSQL_C cp;
  301.         pSQL_I ip;
  302.         pSQL_L lp;
  303.         pSQL_F fp;
  304.         pSQL_D dp;
  305.         pSQL_DEC dec;
  306.         pSQL_D_TIME dt;
  307.     } storage;
  308. } SQLDA_COL, *pSQLDA_COL;
  309.  
  310. typedef struct _sqlda_seg
  311. {
  312.     SQL_UNI columnNumber;
  313. } SQLDA_SEG, *pSQLDA_SEG;
  314.  
  315. typedef struct _sqlda_idx
  316. {
  317.     SQL_UNI keyLength;
  318.     SQL_NI duplicatesAllowed;
  319.     SQL_UNI nsegs;
  320.     pSQLDA_SEG segs;
  321. } SQLDA_IDX, *pSQLDA_IDX;
  322.  
  323. typedef struct _sqlda_tbl
  324. {
  325.     pSQL_C name;
  326.     pSQL_C auth;
  327.     SQL_NI vlflag;
  328.     SQL_L reclen;
  329.  
  330.     /*  these members filled in during sql_TableDescribe  */
  331.     pSQL_C fileName;
  332.     SQL_UNI nidxs;
  333.     pSQLDA_IDX idxs;
  334.  
  335.     struct _sqlda *tableSqlda;
  336.     /*  this is a hook filled in on client side for decoding r_fetch  */
  337. } SQLDA_TBL, *pSQLDA_TBL;
  338.  
  339. typedef struct _sqlda
  340. {
  341.     SQL_UNI ncols;
  342.     SQL_UNI ntbls;
  343.     SQL_UNI nltbls;
  344.     SQL_UNI bufsiz;
  345.     SQL_UNI stringSize;
  346.  
  347.     /*  nidxs, nsegs, and stringSpaceOffset are valid only for         */
  348.     /*  sql_TableDescribe                                              */
  349.     SQL_UNI nidxs;
  350.     SQL_UNI nsegs;
  351.  
  352.     SQL_NI vlflag;
  353.     SQL_UL LogRecNum;
  354.     SQL_UL NumberOfRecords;
  355.     pSQL_C tbuf;
  356.     pSQLDA_COL cols;
  357.     pSQLDA_TBL tbls;
  358. } SQLDA, *pSQLDA;
  359.  
  360. #endif
  361.  
  362. typedef struct _SQL_INIT_PARAMS
  363. {
  364.     SQL_UNI
  365.         maxalc,
  366.         tbufsz,
  367.         maxcsr,
  368.         maxrpf,
  369.         inbfsz,
  370.         maxset,
  371.         defmpc,
  372.         defrpp,
  373.         defmxc;
  374.  
  375.     SQL_BFT
  376.         cqlLockingStrict : 1,
  377.         cqlLockingRelaxed : 1,
  378.         cqlLockingOff : 1,
  379.         outputToTemporarySpace : 1,
  380.         externalTransactionProcessing : 1,
  381.         sqlSuperfiles : 1,
  382.         libraryMode : 1;
  383.  
  384.     SQL_NI
  385.         skipRecovery;
  386.  
  387.     pSQL_C
  388.         authorization,
  389.         cqldir,
  390.         datadir,
  391.         scriptdir,
  392.         password,
  393.         serverId;
  394.  
  395. } SQL_INIT_PARAMS, *pSQL_INIT_PARAMS;
  396.  
  397. typedef struct _SQL_CURSOR
  398. {
  399.     pSQL_VOID
  400.         sqlHandle;
  401.  
  402.     SQL_UNI
  403.         cursorId;
  404.  
  405.     struct _sqlda
  406.         *sqlda;
  407.  
  408. } SQL_CURSOR, *pSQL_CURSOR;
  409.  
  410. typedef struct
  411. {
  412.     char c;
  413.     SQL_C c2;
  414. } SQL_CHAR_TEST;
  415.  
  416. typedef struct
  417. {
  418.     char c;
  419.     SQL_I t1;
  420. } SQL_SMALLINT_TEST;
  421.  
  422. typedef struct
  423. {
  424.     char c;
  425.     SQL_L t1;
  426. } SQL_INTEGER_TEST;
  427.  
  428. typedef struct
  429. {
  430.     char c;
  431.     SQL_DEC t1;
  432. } SQL_DECIMAL_TEST;
  433.  
  434. typedef struct
  435. {
  436.     char c;
  437.     SQL_F t1;
  438. } SQL_FLOAT_TEST;
  439.  
  440. typedef struct
  441. {
  442.     char c;
  443.     SQL_D t1;
  444. } SQL_DOUBLE_TEST;
  445.  
  446. typedef struct
  447. {
  448.     char c;
  449.     SQL_D_TIME t1;
  450. } SQL_DATE_TIME_TEST;
  451.  
  452. #define SQL_CHAR_PAD (sizeof(SQL_CHAR_TEST)-sizeof(SQL_C))
  453. #define SQL_SMALLINT_PAD (sizeof(SQL_SMALLINT_TEST)-sizeof(SQL_I))
  454. #define SQL_INTEGER_PAD (sizeof(SQL_INTEGER_TEST)-sizeof(SQL_L))
  455. #define SQL_DECIMAL_PAD (sizeof(SQL_DECIMAL_TEST)-sizeof(SQL_DEC))
  456. #define SQL_FLOAT_PAD (sizeof(SQL_FLOAT_TEST)-sizeof(SQL_F))
  457. #define SQL_DOUBLE_PAD (sizeof(SQL_DOUBLE_TEST)-sizeof(SQL_D))
  458. #define SQL_DATE_TIME_PAD (sizeof(SQL_DATE_TIME_TEST)-sizeof(SQL_D_TIME))
  459.  
  460. /* marks for output during server FETCH */
  461.  
  462. #define BEG_MARK ((pSQL_C)"^^^")
  463. #define FLD_MARK ((pSQL_C)"@@@")
  464. #define END_MARK ((pSQL_C)"$$$")
  465.  
  466. #ifdef TCC
  467. #include <alloc.h>
  468. #include <float.h>
  469. #endif
  470.  
  471. #ifdef XV
  472. #include <malloc.h>
  473. #include <float.h>
  474. #endif
  475.  
  476. #ifdef WATCOM
  477. #include <malloc.h>
  478. #endif
  479.  
  480. #ifdef UNIX
  481. #include <malloc.h>
  482. #include <float.h>
  483. #endif
  484.  
  485.  
  486. /********************************************************
  487.  *  if any of these are undefined replace with the      *
  488.  *  appropriate constant.  For example, on the SUN,     *
  489.  *  replace FLT_MIN with MINFLOAT, defined in values.h  *
  490.  ********************************************************/
  491.  
  492. #define SQL_SMLNULL SHRT_MIN
  493. #define SQL_INTNULL LONG_MIN
  494. #define SQL_SCALE_NULL 0xfe
  495. #define SQL_DIGS_NULL 017
  496. #define SQL_FLOATNULL ((SQL_F)FLT_MIN)
  497.  
  498. #define SQL_DBLNULL ((SQL_D)DBL_MIN)
  499.  
  500. #define SQL_D_TIME_NULL 0x3fff
  501.  
  502. #ifndef NOEXITREPLACEMENT
  503.  
  504. SQL_LOCAL pSQL_C sql_tbuf[50];
  505. SQL_LOCAL SQL_UNI sql_tbufno;
  506. SQL_LOCAL SQL_NI sql_temp;
  507. SQL_EXTERN pSQL_VOID globalHandle;
  508.  
  509. #ifdef ctSRVR
  510. #define exit(n) sql_exit(globalHandle, n);STPUSR();
  511. #else
  512. #define exit(n) sql_exit(globalHandle, n)
  513. #endif
  514. #define AUTHID(x) sql_initid(&globalHandle, x)
  515.  
  516. #endif
  517.  
  518. #ifdef ANSIFUNCS
  519.  
  520. #ifdef __cplusplus
  521. extern "C"
  522. {
  523. #endif
  524.  
  525. #ifdef __CQL_H__
  526. pFILSPEC sql_GetDictionaryHandle( pSQL_VOID db );
  527. pGLOBALS sql_GetGlobals( pSQL_VOID db );
  528. #endif
  529.  
  530. SQL_NI sql_init( pSQL_VOID *db );
  531. SQL_NI sql_error( pSQL_VOID db, pSQL_NI error, pSQL_NI position,
  532.                  pSQL_NI fileSystemError );
  533. SQL_NI sql_initid( pSQL_VOID *db, pSQL_C name );
  534. SQL_NI sql_init_extended( pSQL_VOID *db, pSQL_INIT_PARAMS ip );
  535. SQL_VOID sql_terminate( pSQL_VOID db );
  536. SQL_VOID sql_exit( pSQL_VOID, SQL_NI );
  537. SQL_NI sql1( pSQL_VOID db, pSQL_C stmnt);
  538. SQL_NI sql_DeclareCursor( pSQL_VOID db, pSQL_C stmnt, pSQL_CURSOR *cursor );
  539. SQL_NI sql_OpenCursor( pSQL_CURSOR cursor );
  540. SQL_NI sql_CloseCursor( pSQL_CURSOR cursor );
  541. SQL_NI sql_ReleaseCursor( pSQL_CURSOR cursor );
  542. SQL_NI sql_CommitWork( pSQL_VOID db );
  543. SQL_NI sql_RollbackWork( pSQL_VOID db );
  544. SQL_NI sql_MakeAccessible( pSQL_VOID, pSQL_C, pSQL_C );
  545.  
  546. #ifdef SQL_OLD_FUNCTION_NAMES
  547.  
  548. #define describe sql_describe
  549. #define destbuf sql_destbuf
  550. #define destsiz sql_destsiz
  551. #define setdest sql_setdest
  552. #define clsdest sql_clsdest
  553. #define destfil sql_destfil
  554. #define r_fetch sql_r_fetch
  555. #define r_fetchp sql_r_fetchp
  556. #define r_insert sql_r_insert
  557. #define r_fastins sql_r_fastins
  558. #define r_update sql_r_update
  559. #define GetLogRecNum sql_GetLogRecNum
  560. #define PositionCursor sql_PositionCursor
  561. #define DisableLocking sql_DisableLocking
  562.  
  563. #endif  /*  SQL_OLD_FUNCTION_NAMES  */
  564.  
  565. #ifdef SYSTEM_V_VARARGS
  566. SQL_NI sql2();
  567. SQL_NI sql_Fetch();
  568. SQL_NI sql_FetchPrevious();
  569. #else
  570. SQL_NI sql2( pSQL_VOID db, pSQL_C stmnt, SQL_UNI nv, pVARSPEC v1, ... );
  571. SQL_NI sql_Fetch( pSQL_CURSOR cursor, SQL_UNI nv, pVARSPEC v1, ... );
  572. SQL_NI sql_FetchPrevious( pSQL_CURSOR cursor, SQL_UNI nv, pVARSPEC v1, ... );
  573. #endif
  574.  
  575. #ifndef SKIP_SQLDA
  576. SQL_NI sql_describe( pSQL_CURSOR, pSQLDA, SQL_UNI, pSQL_NI, pSQL_UNI );
  577. SQL_NI sql_TableDescribe( pSQL_VOID, pSQL_C, pSQL_C, pSQLDA, SQL_UNI,
  578.                           pSQL_NI, pSQL_UNI );
  579. SQL_NI sqlda_fetch( pSQL_CURSOR cursor, pSQLDA sqlda );
  580. SQL_NI sqlda_fetchp( pSQL_CURSOR cursor, pSQLDA sqlda );
  581. SQL_NI sqlda_sfetch( pSQL_CURSOR cursor, pSQLDA sqlda );
  582. SQL_NI sqlda_sfetchp( pSQL_CURSOR cursor, pSQLDA sqlda );
  583. #endif
  584.  
  585. SQL_NI cqlprnt( pSQL_VOID db, pSQL_C stmnt );
  586. SQL_VOID sql_destbuf( pSQL_VOID db, pSQL_C addr, SQL_UNI bufsiz );
  587. SQL_UNI sql_destsiz( pSQL_VOID );
  588. SQL_NI sql_setdest( pSQL_VOID db, pSQL_C filename );
  589. SQL_VOID sql_clsdest( pSQL_VOID );
  590. SQL_VOID sql_destfil( pSQL_VOID );
  591. SQL_NI cql1( pSQL_VOID, pSQL_C, SQL_ANYPTR, SQL_UNI, pSQL_UNI );
  592. SQL_NI cql2( pSQL_VOID,SQL_ANYPTR,SQL_UNI,pSQL_UNI,pSQL_C,SQL_UNI,pVARSPEC* );
  593. SQL_NI cql( pSQL_VOID, pSQL_C, SQL_ANYPTR, SQL_UNI, pSQL_UNI );
  594. SQL_NI sql_r_fetch( pSQL_CURSOR cursor, SQL_POINTER_ARRAY DataPointers);
  595. SQL_NI sql_ServerFetch( pSQL_CURSOR, pSQL_UNI );
  596. SQL_NI sql_ServerFetchPrevious( pSQL_CURSOR, pSQL_UNI );
  597. SQL_NI sql_ServerRFetch( pSQL_CURSOR cursor, pSQL_UNI outputLength );
  598. SQL_NI sql_r_fetchp( pSQL_CURSOR cursor, SQL_POINTER_ARRAY DataPointers );
  599. SQL_NI sql_ServerRFetchPrevious( pSQL_CURSOR cursor, pSQL_UNI outputLength );
  600. SQL_NI sql_r_insert( pSQL_CURSOR cursor, SQL_POINTER_ARRAY DataPointers );
  601. SQL_NI sql_ServerRInsert( pSQL_CURSOR cursor, pSQL_C data, SQL_UNI length );
  602. SQL_NI sql_r_fastins( pSQL_CURSOR cursor, SQL_POINTER_ARRAY DataPointers );
  603. SQL_NI sql_r_update( pSQL_CURSOR cursor, SQL_POINTER_ARRAY DataPointers );
  604. SQL_NI sql_ServerRUpdate( pSQL_CURSOR cursor, pSQL_C data, SQL_UNI length );
  605. SQL_NI sql_GetLogRecNum( pSQL_CURSOR cursor, pSQL_UL recnum );
  606. SQL_NI sql_PositionCursor( pSQL_CURSOR cursor, SQL_UL LogRecNum );
  607. SQL_VOID sql_DisableLocking( pSQL_VOID );
  608. SQL_VOID sql_StrictLocking( pSQL_VOID );
  609. SQL_VOID sql_RelaxedLocking( pSQL_VOID );
  610.  
  611. #ifndef __PSDECL_H__
  612. SQL_ANYPTR xalloc(SQL_UNI size);
  613. #endif
  614.  
  615. #ifdef __cplusplus
  616. }
  617. #endif
  618.  
  619. #else
  620.  
  621. SQL_NI sql_init();
  622. SQL_NI sql_error();
  623. SQL_VOID sql_exit();
  624. SQL_NI sql1();
  625. SQL_NI sql2();
  626. SQL_NI describe();
  627. SQL_NI sqlda_fetch();
  628. SQL_NI sqlda_fetchp();
  629. SQL_NI sqlda_sfetch();
  630. SQL_NI sqlda_sfetchp();
  631. SQL_NI cqlprnt();
  632. SQL_VOID destbuf();
  633. SQL_UNI destsiz();
  634. SQL_NI setdest();
  635. SQL_VOID clsdest();
  636. SQL_VOID destfil();
  637. SQL_NI cql1();
  638. SQL_NI cql2();
  639. SQL_NI cql();
  640. SQL_NI r_fetch();
  641. SQL_NI r_fetchp();
  642. SQL_NI r_insert();
  643. SQL_NI r_fastins();
  644. SQL_NI r_update();
  645. SQL_NI GetLogRecNum();
  646. SQL_NI PositionCursor();
  647. SQL_VOID DisableLocking();
  648. SQL_NI sql_MakeAccessible();
  649.  
  650. #ifndef __PSDECL_H__
  651. SQL_ANYPTR xalloc();
  652. #endif  /*  __PSDECL_H__  */
  653.  
  654. #endif  /*  ANSIFUNCS  */
  655.  
  656. #endif /* ~ctNONSQL */
  657.  
  658. #endif  /*  __CTSSQL_H__  */
  659.